Can I make the RecipIf rule continue to search after a false condition?

No, you need custom code.

For example, if you are using RecipIf rule to trigger a form if the system finds two consecutive records in a single transaction and each record meets specific criteria, such as…

Record 001 and record 002 occurs x-times consecutively in a transaction.
Record 001 record 002 record AAA record BBB record 001 record 002  . .

The RecipIf rule tells the system to check the first 001/002; but if it is false, the system does not continue to search for another set of 001/002 records in the transaction. Is there a way for recipif to do this?

When the system evaluates the rule, its search differs from that triggered by search mask 1 or 2 because the system evaluates the first found record which matches the search identifier and evaluates if that record is true of false. Then, the system stops. If that record is false, the system performs the steps for the false trigger. For example, suppose the custom rule is specified as…

;Recipif;A={11,SPECIAL 51,4};;if(A=’1995’);;return(“^1^”);;else;;return(“^0^”);;end;;

For overflow situations, the system continues searching and counts the number of true conditions. The system triggers the number of sections or forms based on the number of True conditions it finds.

Once the system finds a matching record, it processes the rule and returns the necessary value, if any. At that point, the system thinks that it has finished that entry. It does not keep looking for more records in the extract file for that entry (except for those exceptions described below). Then, it moves on to the next entry. This applies to all this applies to all field and section rules.

Here are some exceptions:

You can use the @GETRECSUSED function with the with field and section rules. When you use this function, the system keeps looking for more records in the transaction which match the search criteria. Please note, however, that not every field and section rule supports this function. For example, the IF rule does not support this function.

When the system evaluates the counter or True/False mask, it searches through all of the records in the extract file for the transaction. If any of them match the search criteria, the system considers the condition to be true. If there are multiple records with the same search identifier, the system evaluates all of them. If any of these records match the search criteria, the trigger condition is true.

For example, suppose the Search Mask 2 is specified as 11,SPECIAL,20,5 and in the extract file there are two records which have SPECIAL at offset 1; the first one has A at offset 20, and the second one has 5 at offset 20. The system evaluates both records and, since it finds the second record meets the search condition, determines the second record to be True.

The system stops searching once a True condition is found. For overflow situations, the system will continue searching after it finds the first True condition. In overflow situations, the system counts the number of True conditions and triggers the number of sections or forms based on the number of True conditions.